Methods and systems of providing response based on communication session participant request urgency

ABSTRACT

Systems and methods of processing data associated with a communication session are described. Systems and methods include generating an urgency score associated with data associated with a communication session based on processing the data and using the urgency score to modify a behavior of a bot or a call center agent and optimize a contact center. Systems and methods include modifying behavior of a bot or an agent during the communication session in response to the data. Systems and methods include modifying dialog of a bot, or a script of an agent, and modifying a control flow for the communication session. Optimizing a contact center includes adjusting a workload of an agent associated with the communication session.

FIELD OF THE INVENTION

The present disclosure relates generally to communication sessions andmore particularly to providing a response based on urgency of acommunication session participant request.

BACKGROUND OF THE INVENTION

Businesses conventionally use call center services to enable customersto call and speak with a representative for support. For example, techcompanies use call centers to provide technical support and airlinecompanies use call centers to provide customer support. As business isincreasingly conducted at a distance, more and more customers use callcenters to speak with representatives of businesses. As more and morecustomers use call centers, the customers increasingly outnumberrepresentatives such as call center agents.

To better handle incoming calls, and to prevent callers from waiting onhold for large amounts of time, call centers are increasingly making useof automated response systems such as bots. Bots can be used to gatherinformation from callers, such as user profile information and thereason why the caller is calling. Such information can be used to eithertotally handle the call—by providing the information which the callerseeks—or to direct the caller to the best agent capable of handling thecall.

While bots and other forms of automated response systems provide a greatbenefit for the average caller, bots and other forms of automatedresponse systems cannot conventionally adequately respond to urgentmatters. For example, with conventional systems, when a caller has acritical issue which requires a prompt and serious response, the callermust speak with the same bots and other forms of automated responsesystems and wait with the same hold music as callers with less criticalissues which do not require a prompt response.

As a result, time-critical issues are often not properly resolved andcallers with urgent problems do not receive satisfaction. What is neededis a system capable of identifying and handling such callers.

BRIEF DESCRIPTION OF THE DRAWINGS

The exemplary embodiments of the present disclosure will be described indetail, with reference to the following figures, wherein:

FIG. 1 illustrates an exemplary communications environment according tothe present disclosure;

FIG. 2 illustrates an exemplary communications environment according tothe present disclosure;

FIGS. 3A and 3B are illustrations of user interfaces in accordance withthe present disclosure; and

FIG. 4 is a flowchart outlining an exemplary method in accordance withthe present disclosure.

The drawing figures depict one or more implementations in accord withthe present teachings, by way of example only, not by way of limitation.In the figures, like reference numerals refer to the same or similarelements. Furthermore, it should be understood that the drawings are notnecessarily to scale.

DETAILED DESCRIPTION

The invention will be described below in relation to a communicationsenvironment. Although well suited for use with circuit-switched orpacket-switched networks, the invention is not limited to use with anyparticular type of communications system or configuration of systemelements and those skilled in the art will recognize that the disclosedtechniques may be used in any application in which it is desirable toprovide responses to internet/intranet posts. For example, the systemsand methods disclosed herein will also work well with SIP-basedcommunications systems and endpoints. Moreover, various endpoints usablewith the present invention can be any communications device such as aPC, telephone, speakerphone, cellular phone, SIP-enabled endpoint,softphone, PDA, conference system, video conference system, wired orwireless communication device, or in general any communications devicethat is capable of sending and/or receiving voice and/or datacommunications.

The exemplary systems and methods of this invention will also bedescribed in relation to software, modules, and associated hardware andnetwork(s). In order to avoid unnecessarily obscuring the presentinvention, the following description omits well-known structures,components and devices that may be shown in block diagram form, are wellknown, or are otherwise summarized.

For purposes of explanation, numerous details are set forth in order toprovide a thorough understanding of the present invention. It should beappreciated however, that the present invention may be practiced in avariety of ways beyond the specific details set forth herein.

A number of variations and modifications of the invention can be used.It would be possible to provide or claim for some features of theinvention without providing or claiming others.

Some of the exemplary systems and methods of this invention have alsobeen described in relation to a Customer Service 2.0/Web 2.0 environmentwhich commonly associated with web applications that facilitateinteractive information sharing, interoperability, user-centered design,and collaboration on the Internet. Examples of Web 2.0 include web-basedcommunities, hosted services, web applications, social-networking sites,video-sharing sites, wikis, blogs, mashups, and folksonomies. A Web 2.0site allows its users to interact with other users or to change websitecontent, in contrast to non-interactive websites where users are limitedto the passive viewing of information that is provided to them. However,to avoid unnecessarily obscuring the present invention, the descriptionomits a number of known structures and devices common to thisenvironment. This omission is not to be construed as a limitation of thescope of the claimed invention. Specific details are set forth toprovide an understanding of the present invention. It should however beappreciated that the present invention may be practiced in a variety ofways beyond the specific detail set forth herein.

Furthermore, while the exemplary embodiments illustrated herein showvarious components of the system collocated, certain components of thesystem can be located remotely, at distant portions of a distributednetwork, such as a LAN, cable network, and/or the Internet, or within adedicated system. Thus, it should be appreciated, that the components ofthe system can be combined in to one or more devices, such as a gateway,or collocated on a particular node of a distributed network, such as ananalog and/or digital communications network, a packet-switch network, acircuit-switched network, or a cable network.

As will be appreciated from the preceding description, and for reasonsof computational efficiency, that the components of the system can bearranged at any location within a distributed network of componentswithout affecting the operation of the system. For example, the variouscomponents can be located in a switch such as a PBX and media server,gateway, a cable provider, enterprise system, in one or morecommunications devices, at one or more users' premises, or somecombination thereof. Similarly, one or more functional portions of thesystem could be distributed between a communications device(s) and anassociated computing device.

Furthermore, it should be appreciated that the various links, such aslink 5, connecting the elements can be wired or wireless links, or anycombination thereof, or any other known or later developed element(s)that is capable of supplying and/or communicating data to and from theconnected elements. These wired or wireless links can also be securelinks and may be capable of communicating encrypted information.Transmission media used as links, for example, can be any suitablecarrier for electrical signals, including coaxial cables, copper wireand fiber optics, and may take the form of acoustic or light waves, suchas those generated during radio-wave and infra-red data communications.

Referring now to FIG. 1 , a block diagram of a communication system 100is shown in accordance with at least some embodiments of the presentdisclosure. The communication system 100 of FIG. 1 may be a distributedsystem and, in some embodiments, comprises a communication network 109connecting one or more communication devices 106 with a communicationserver 115. The network 109 may be, for example, a public switchedtelephone network (PSTN) or other type of telephony system. Thecommunication server 115 may be a part of a local or distributed network112 such as a network of a call center. The communication system 100 mayinclude, but is not limited to, a first communication device 106 acommunication server 115, and a memory storage device 118. Thecommunication server 115 may provide collaborative communicationsessions, conference meetings, multi-party calls, SIP functionality,traditional telephone calls, and/or other audio/video communicationservices. In some embodiments, the communication server 115 maycorrespond to an SBC, or other communications controller, through whichcommunications pass as part of a communication session establishedbetween two or more communication devices such as a communication device106 operated by a user 103, a computer system 121 functioning as anautomated agent, and a computer system 124 operated by a human agent127. The communication device 106 may be, for example, a telephone suchas a smartphone or other type of device capable of or configured toperform telephone calls via a telephony network such as PSTN.

Although the communication server 115 may control communication sessionsbetween communication devices, it should be appreciated that thefunctionality of the communication server 115 as described herein may beprovided by at least one of the computer systems 121, 124 in the network112. Stated another way, the computer systems 121, 124 of the network112 may comprise the various instructions, conditions, rules, and/ordata described herein as being performed by the communication server115. In this manner, the computer systems 121, 124 may communicate withone another across the network 112 as well as with external devices suchas communication device 106 via a network 109 such as the PSTN withoutrequiring inclusion of the communication server 115 to provide theconditional requirements and compliance assurances described herein.

It is an aspect of the present disclosure that the users 103, 127 mayestablish a communication session, such as a phone call. In particular,each of the users 103, 127 may use a respective communication device 106or computer system 124 to initiate a call and dial out to another user103, 127 across the network 109. Upon initiating the call, one or moredevices (e.g., computer systems 121, 124, communication server 115,etc.) in the network 112 may perform call-related processes, such ascall recording or other types of call monitoring processes. Althoughonly two users 103, 127 and corresponding communication devices 106 andcomputer systems 124 are illustrated in FIG. 1 , it should beappreciated that the communication system 100 may comprise any number ofusers and communication devices or computer systems capable ofcommunicating via the PSTN or other type of telephony network.

In accordance with at least some embodiments of the present disclosure,the network 109 may comprise any type of known communication medium orcollection of communication media and may use any type of protocols totransport messages between endpoints. The communication network 109 mayinclude wired and/or wireless communication technologies. The Internetis an example of the communication network 109 that constitutes anInternet Protocol (“IP”) network consisting of many computers, computingnetworks, and other communication devices located all over the world,which are connected through many telephone systems and other means.Other examples of the communication network 109 include, withoutlimitation, a standard Plain Old Telephone System (“POTS”), anIntegrated Services Digital Network (“ISDN”), the Public SwitchedTelephone Network (“PSTN”), a Local Area Network (“LAN”), a Wide AreaNetwork (“WAN”), a VoIP network, a SIP network, a cellular network, andany other type of packet-switched or circuit-switched network known inthe art. In addition, it can be appreciated that the communicationnetwork 104 need not be limited to any one network type, and instead maybe comprised of a number of different networks and/or network types. Thecommunication network 104 may comprise a number of differentcommunication media such as coaxial cable, copper cable/wire,fiber-optic cable, antennas for transmitting/receiving wirelessmessages, and combinations thereof.

In some embodiments, at least one of the communication devices 106 orcomputer systems 124, 127 may correspond to a computing device, apersonal communication device, a portable communication device, alaptop, a smartphone, a tablet, a personal computer, and/or any othercommunication device capable of running an operating system (“OS”), atleast one voice application, communication instructions, and/or thelike. The communication devices or computer systems may be configured tooperate various versions of Microsoft Corp.'s Windows® and/or AppleCorp.'s Macintosh® operating systems, any of a variety ofcommercially-available UNIX® such as LINUX or other UNIX-like operatingsystems, iOS, Android®, etc. These communication devices or computersystems may also have any of a variety of applications, including forexample, voice applications, chat applications, calling applications,email applications, SIP applications, etc., and/or combinations thereof.Additionally or alternatively, the communication devices or computersystems, in some embodiments, may be any other electronic device, suchas an Internet-enabled mobile telephone and/or a personal digitalassistant, capable of communicating via the communication network 109.

In some embodiments, communications may be sent and/or received via arespective communication device or computer system as a telephone call,a packet or collection of packets (e.g., IP packets transmitted over anIP network), an email message, an instant message (“IM”), a shortmessage service (“SMS”) message, a multimedia messaging service (“MMS”)message, a chat, and/or combinations thereof. In some embodiments, thecommunication devices and/or computer systems may communicate over anaudio and/or a video channel over the communication network 109.

As illustrated in FIG. 2 , the communication server 115 may includehardware and/or software resources that, among other things, providesthe ability for controlling calls between users 103, 127 and/orautomated agents executed by computer systems (e.g., via associatedcommunication devices 106, computer systems 124, 127, etc.). Among otherthings, the communication server 115 may provide communicationfunctionality that allows the communication devices and/or computersystems to hold party-to-party calls, multi-party calls, conferencecalls, and/or other collaborative communications over a samecommunication channel, in an established communication session. Thecommunication server 115 may include a network interface 209, aprocessor 203, a user interface 212, and a memory 206. The memory 206may comprise communication instructions, and/or the like.

The network interface 209 may provide the communication server 115 withthe ability to send and receive communication packets or the like overthe communication network 109 and/or the network 112. The networkinterface 209 may be provided as a network interface card (“NIC”), anetwork port, a modem, drivers for the same, and the like.Communications between the components of the communication server 115and other devices connected to the communication network 109 or part ofthe network 112 may flow through the network interface of thecommunication server 115. In some embodiments, examples of a suitablenetwork interface 209 include, without limitation, an antenna, a drivercircuit, an Ethernet port, a modulator/demodulator, an NIC, an RJ-11port, an RJ-45 port, an RS-232 port, a USB port, etc. The networkinterface 209 may include one or multiple different network interfacesdepending upon whether the communication server 115 is connecting to asingle communication network or multiple different types ofcommunication networks. For instance, the communication server 115 maybe provided with both a wired network interface and a wireless networkinterface without departing from the scope of the present disclosure. Insome embodiments, the network interface 209 may include differentcommunications ports that interconnect with various input/output lines.

In some embodiments, the processor 203 of the communication server 115may correspond to one or more computer processing devices. For example,the processor 203 may be provided as silicon, an Application-SpecificIntegrated Circuit (“ASIC”), as a Field Programmable Gate Array(“FPGA”), any other type of Integrated Circuit (“IC”) chip, a collectionof IC chips, and/or the like. In some embodiments, the processor 203 maybe provided as a Central Processing Unit (“CPU”), a microprocessor, or aplurality of microprocessors that are configured to execute theinstructions sets stored in memory. Upon executing the instruction setsstored in memory 206, the processor 203 enables various communications,compliance (e.g., authentication, checking, verification, and/orauthorization, etc.), and/or interaction functions of the communicationserver 115, and may provide an ability to establish and maintaincommunication sessions between communication devices (e.g.,communication device 106) and/or computer systems 121, 124 over thecommunication network 109 when specific predefined conditions are met.

The memory 206, or storage memory, may correspond to any type ofnon-transitory computer-readable medium. In some embodiments, the memory206 may comprise volatile or non-volatile memory and a controller forthe same. Non-limiting examples of the storage memory 206 that may beutilized in the communication server 115 may include Random AccessMemory (“RAM”), Read Only Memory (“ROM”), buffer memory, flash memory,solid-state memory, or variants thereof. Any of these memory types maybe considered non-transitory computer memory devices even though thedata stored thereby can be changed one or more times. The memory 206 maybe used to store information about communications, identifications,conditional requirements, times, authentication, authorization,compliance, history, and/or the like. In some embodiments, the memory206 may be configured to store rules and/or the instruction setsdepicted in addition to temporarily storing data for the processor 203to execute various types of routines or functions. Although notdepicted, the memory 206 may include instructions that enable theprocessor 203 to store data into a memory storage device 118 andretrieve information from the memory storage device 118. In someembodiments, the memory storage device 118 or the data stored thereinmay be stored internal to the communication server 115 (e.g., within thememory 203 of the communication server 115 rather than in a separatedatabase) or in a separate server.

The communication instructions, when executed by the processor 203, mayprovide the ability for at least one of the communication devices (e.g.,communication device 106) associated with a user (e.g., user 103) toestablish one or more communication sessions that enable calls,messaging, holding, or conducting communications, and/or otherwisesending and receiving messages via the communication session. Thecommunication instructions may use existing private branch exchange(“PBX”) equipment, services, and/or infrastructure. The communicationserver 115 and the processor 203 executing the communicationinstructions may enable call routing, call authorization, and calltermination. Examples of other functions performed via the communicationinstructions, when executed by the processor 203, include, but are in noway limited to, normalizing disparate networks, providing centralizedrouting of calls and management of user profiles, supporting convergedvoice and video bandwidth management, providing application sequencingcapabilities, etc., and/or combinations thereof.

In some embodiments, the communication instructions may define rules andinstructions for interactions between the communication server 115 andat least one of the communication devices (e.g., communication device106) and computer systems (e.g., computer system 121, 124) in thecommunication system 100. The communication instructions may causeapplications, web pages, pop-ups, and/or other digital interactions tobe presented by the display of a computer system 121, 124. Thecommunication instructions, when executed by the processor 203, maydetermine to present a user with one or more voice application pages,call options, request input, and/or provide other forms of output. Theseinteractions may be provided by sending a message to a computer system121, 124 over the network 112 in the communication system 100 causing adisplay device of the computer system 121, 124 to render information anduser-selectable options. The communication instructions may beconfigured to perform at least some steps of the methods described inconjunction with FIGS. 3B and 3C and as otherwise described herein.

The user interface 212 may correspond to any type of input and/or outputdevice, or combination thereof, that enables a user to interact with thecommunication server 115. As can be appreciated, the nature of the userinterface 212 may depend upon the nature of the communication server115. Examples of the user interface 212 may include, but are in no waylimited to, user interface hardware and devices such as at least onetouch-sensitive display elements, buttons, switches, keyboards,peripheral interface devices (e.g., mice, controller, joysticks, etc.)as described herein. It is an aspect of the present disclosure that oneor more devices in the user interface 212 may provide an input that isinterpreted by the processor 203 in controlling one or more componentsof the communication server 115.

The processor 203 may correspond to one or many computer processingdevices. Non-limiting examples of a processor include a microprocessor,an IC chip, a General Processing Unit (“GPU”), a CPU, or the like.Examples of the processor 203 as described herein may include, but arenot limited to, at least one of Qualcomm® Snapdragon® 800 and 801,Qualcomm® Snapdragon® 620 and 615 with 4G LTE Integration and 64-bitcomputing, Apple® A7 processor with 64-bit architecture, Apple® M7motion coprocessors, Samsung® Exynos® series, the Intel® Core™ family ofprocessors, the Intel® Xeon® family of processors, the Intel® Atom™family of processors, the Intel Itanium® family of processors, Intel®Core® i5-4670K and i7-4770K 22 nm Haswell, Intel® Core® i5-3570K 22 nmIvy Bridge, the AMD® FX™ family of processors, AMD® FX-4300, FX-6300,and FX-8350 32 nm Vishera, AMD® Kaveri processors, ARM® Cortex™-Mprocessors, ARM® Cortex-A and ARM926EJ-S™ processors, otherindustry-equivalent processors, and may perform computational functionsusing any known or future-developed standard, instruction set,libraries, and/or architecture. The processor 203 may be a multipurpose,programmable device that accepts digital data as input, processes thedigital data according to instructions stored in its internal memory,and provides results as output. The processor 203 may implementsequential digital logic as it has internal memory.

The network interface 209 may comprise hardware that facilitatescommunications with other devices (e.g., communication devices, computersystems, and/or servers, etc.) over the communication network 109 or thenetwork 112. In some embodiments, the network interface 209 may includean Ethernet port, a Wireless Fidelity (“Wi-Fi”) card, an NIC, a cellularinterface (e.g., antenna, filters, and associated circuitry), or thelike. The network interface 209 may be configured to facilitate aconnection between the communication device 106 and the communicationserver 115, and/or computer systems 121, 124, via the communicationnetwork 104 and/or network 112.

The memory 206 may correspond to any type of non-transitorycomputer-readable medium. In some embodiments, the memory 206 maycomprise volatile or non-volatile memory and a controller for the same.Non-limiting examples of memory 206 that may be utilized in thecommunication server 115 may include RAM, ROM, buffer memory, flashmemory, solid-state memory, and/or variants thereof. Any of these memorytypes may be considered non-transitory computer memory devices eventhough the data stored thereby can be changed one or more times. In someembodiments, the memory 206 may be configured to store rules and/or theinstruction sets depicted in addition to temporarily storing data forthe processor 203 to execute various types of routines or functions.

In some embodiments, the communication server 115 may comprise at leastone display device that renders information, applications, windows,interactive elements, and/or other visual output via a user interface212. The communication server 115 may further include at least onedisplay controller that controls an operation of the display device.This operation may include the control of input (e.g., input provided bya user via the user interface 212, command input via the instructionsets in memory 206, and/or combinations thereof, etc.), output (e.g.,display, rendered images, window behavior, etc.) and/or other functionsof the display controller and display device.

As described above, the display device may comprise at least one displayscreen that selectively activates pixels and/or display elements torender one or more applications, windows, controls, interactiveelements, icons, characters, images, etc. Examples of the display screenmay include, but are in no way limited to, a Liquid Crystal Display(“LCD”), a Light Emitting Diode (“LED”) display, an ElectroluminescentDisplay (“ELD”), an Organic LED (“OLED”) display, and/or some other typeof display. In some embodiments, the display device may be configured torender information in one or more discrete areas (e.g., backgrounds,portions, windows, zones, etc.) of the display screen or superimposed inan area of the display screen.

For example, as illustrated in FIGS. 3A and 3B, display devices 300, 350may be configured to display a variety of user interfaces 303, 353. Suchuser interfaces 303, 353 may be displayed in conjunction with one ormore of the systems and methods described herein. User interfaces may beused to display data associated with applications. For example, and asdescribed in greater detail below, user interfaces may be displayed onterminals used by call center agents. Such user interfaces may be usedto display information relating to ongoing calls. As described ingreater detail below, call center agents may be responsible for aplurality of calls simultaneously. A user interface may be used todisplay information relating to one or more calls. A user interfacedisplayed on call center terminals used by call center agents maydisplay user customizable information relating to one or more calls.

As illustrated in FIG. 3A, a display device 300 may display a userinterface 303 which may display information relating to a call centeragent associated with the display device 300. Such information mayinclude but should not be considered as being limited to an identity ofthe call center agent, a list of current ongoing communication sessions,a weekly total number of communication sessions associated with the callcenter agent, an overview of the total weekly number of sessionsassociated with the call center agent, etc. The overview of the totalweekly number of sessions associated with the call center agent mayinclude data such as a relative urgency score as discussed in greaterdetail below. Using such an overview, the call center agent may beenabled to have a quick view of his or her total workload for the week.It should be appreciated the discussion of a week is for examplepurposes only and should not be considered as being limited to a week.For example, the time period may be a day, month, year, etc. The userinterface 303 may also display information relating to a single callassociated with a call center agent. For example, the user interface 303may display information such as an identity of a customer or otherperson associated with the call, a current runtime for the call, anurgency score associated with the call as discussed in greater detailbelow, a script for the agent to follow, suggestions for a change incall type as discussed in greater detail below, etc.

In some embodiments, the user interface 303 may display one or more ofan absolute urgency score and a relative urgency score. An absoluteurgency score may be a raw urgency score of a communication sessionwithout considering any past communication sessions or other calls. Arelative urgency score may on the other hand be an indication of therelative urgency of the communication session with respect to pastcommunication sessions and/or other calls. In some embodiments, therelative urgency score may be calculated as a difference between theaverage urgency score and the raw urgency score of the currentconversation. The absolute and relative urgency scores may be presentedas a number on a scale, such as from one to ten, or as a percentage. Inthis way, an agent may be enabled to see that the conversation he or sheis about to enter is either less urgent, more urgent, or at an averageurgency relative to past conversations. Such an indication may bevisually represented with color or an icon. For example, when a callerwith a relatively high level of urgency is routed to a call agent, aterminal used by the call agent may display a visual indication that thecaller has a relatively high level of urgency. The call agent may beenabled to see such an indication prior to the call agent accepting thecall from the caller.

As illustrated in FIG. 3B, a display device 350 such as one operated bya manager of a call center may display a user interface 353. Such a userinterface 353 may display information relating to calls currently inprogress by one or more agents of the call center such as an identity ofthe agent, an identity of the other party to the call, a length of thecall, and an urgency score as described in greater detail below. Theuser interface 353 may also display information relating to a weeklysummary of calls made by the call center. For example, the userinterface 353 may display a table comprising a list of agents, totalnumber of calls made by each agent, a total length of time each agenthas spoken on the phone, and an average urgency score for calls fieldedby each agent.

The user interface 353 may also enable a user such as a manager of acall center to monitor statistics for one or more users such as callcenter agents. For example, statistics may include an indication of aname of a user being summarized in the statistics, a table describingcalls currently in-progress, a summary of the user's weekly workload,and a summary of the user's daily work. As described below, the userinterfaces 303, 353 may be used in conjunction with one or more systemsand methods in accordance with embodiments described below.

As illustrated in FIG. 4 , a method 400 may be implemented using one ormore computer systems. For example, a computer system such as acommunication server 115 as illustrated in FIG. 1 may be used to performone or more steps of the method 400 such as generating an urgency scoreand modifying bot behavior as discussed below.

At 403, a communication session may begin. A communication session asdescribed herein may be a phone call, a voice chat using a webapplication, a text messaging conversation over SMS or the web, a videocall, etc. The communication session may begin with a caller callinginto, for example, a call center or contact center.

When a call is received by the computer system, such as thecommunication server 115, the call may begin with the caller speakingwith an automated voice response system such as a bot. During thecommunication session, text, audio, and/or video sent from the callermay be monitored and processed by the computer system at 406.

Monitoring the communication session may comprise in some embodimentsrecording audio created by the caller during the communication session.In some embodiments, recorded and/or live audio may be transcribed.

Transcribed audio and/or text sent from the caller, such as during atext communication, may be processed using an artificial intelligence(AI) engine. As discussed below, by processing audio and/or text fromthe communication session, the computer system may be enabled todetermine types of words used by the caller, types of problems describedby the caller, etc. which may be useful in computing an urgency score asdiscussed below.

In some embodiments, audio from the caller may also or alternatively beprocessed using an AI engine. Processing audio from the caller mayenable the computer system to determine a tone of voice of the caller asdescribed below which may be useful in computing an urgency score asdiscussed below.

In some embodiments, an AI engine may be used to process video data fromthe communication session. Processing video data from the communicationsession may enable the computing system to determine facial expressions,hand gestures, etc., which may be useful in computing an urgency scoreas discussed below.

An AI engine as described herein may be trained using training datawhich may be stored in a storage system 118 in communication with thecomputer system. The AI engine in some embodiments may be a processexecuted by another computer system external to the computer system.

At 409, the computer system may determine whether the caller can beidentified. For example, the computer system may determine the caller isassociated with a user profile. Identifying the caller may compriserequesting and/or receiving data from the caller. For example, thecaller may be asked name, date of birth, address, etc., or may sharesuch information without requiring a request.

Identifying the caller may also comprise categorizing the caller into atype of user. For example, the computer system may determine whether thecaller is an existing customer or a new customer, an age group of thecaller, a type of problem or issue experienced by the caller, the reasonwhy the caller is calling, etc.

At 412, if the caller cannot be identified, the computer system maydetermine one or more characteristics or qualities about the caller todetermine whether the caller belongs or can be associated with one ormore cohorts.

A cohort may be a group of previous callers having one or morecharacteristics in common. Such characteristics may comprise, forexample, age, sex, an issue giving rise to the call, a social mediapresence, a customer type, e.g., existing customer or new customer, sizeof portfolio, etc., or any other identifiable characteristic.

A caller may be associated with multiple cohorts, for example, a cohortbased on an age group and a cohort based on callers with similarproblems. A cohort may be a narrowly defined group, such as callers withsimilar ages, same gender, and same issue giving rise to the call, ormay be a more widely defined group, such as merely a similar age.

After determining the caller belongs to one or more cohorts, thecomputer system may next determine a baseline urgency score based on thecohorts at 415. The baseline urgency score may be generated based inpart on one or more prior communication sessions associated with othercallers.

For example, urgency scores may be generated for past callers in asimilar way as described herein. Such urgency scores may be stored in adatabase along with user information for each past caller. Using thedatabase, the computer system may be enabled to identify a number ofpast callers within the same cohort or cohorts. The urgency scores foreach past caller within the same cohort or cohorts may be used togenerate a baseline score. Generating the baseline score may comprisedetermining an average urgency score for all past callers in the samecohort or cohorts.

The baseline urgency score can be used, as described below, to generatean urgency score for the caller him or herself. In this way, the urgencyscore can be generated based in part on a baseline urgency scoreassociated with the other callers.

If the caller can be identified, the computer system may be enabled todetermine a baseline urgency score based on a call history associatedwith the caller at 418. It should be appreciated that caller cohortinformation may also be used in the event the caller is known, forexample in addition to or instead of using caller history.

Determining a baseline urgency score for the caller may comprisedetermining an urgency score for one or more past calls or communicationsessions associated with the caller. Determining urgency scores for pastcalls may comprise performing a data lookup in a database. For example,after each communication session, user information and urgency levels orscores, as described below, may be stored in a database such as a table.

Determining the baseline urgency score for the caller based on pastcalls or communication sessions associated with the caller may comprisecomputing an average urgency score for all past calls or communicationsessions associated with the caller. For example, consider a digitaluser who previously expressed a very high level of urgency when tryingto determine the nearest business office to his/her home. An indicationof the high level of urgency may be stored in a database associated theuser. When the digital user calls again at a later time, the high levelof urgency may be used as a baseline urgency score for the digital user.

It should be appreciated that even if the caller is known, the samecohort information discussed above can be applied to known callers suchthat a baseline urgency may be determined based on cohort information inaddition to previously known user information.

In some embodiments, in the event that a caller is unknown, i.e., thatthe caller cannot be associated with any conversation history or isassociated with a limited history, a baseline urgency or bias may becomputed based on one or more attributes of the caller and/or the entitywhich the caller is calling. In some embodiments, an average bias orurgency score across all past calls may be computed. For example, anaverage urgency score for all calls for a particular company or aparticular industry may be calculated and used as a baseline urgency.

In some embodiments, demographics of the caller, e.g., location, age,gender, etc., may be used to associate the caller with one or morecohorts. Location of the caller may be used to associate the caller witha cohort of other callers calling from the same or similar locations.For example, an average urgency score for callers calling from anairport may be relatively higher than an overall average urgency scorefor all callers. A caller determined to be calling from an airport maybe associated with such a cohort and this have a relatively higherbaseline urgency.

In some embodiments, particular situations may warrant separate bias orbaseline urgency calculations due to one or more historic conversationalbiases which may be affected by one or more factors. The time of day,week, month, year, etc., during which the caller calls may be used toassociate the caller with a cohort of callers calling at a same orsimilar time. For example, if a contact center is closed on weekends,then callers calling on Monday within the first thirty minutes of thecall center opening may have a higher-than-average urgency. Each callercalling during such a time may be associated with a relatively higherlevel of urgency.

In some embodiments, business intent of a caller may be used toassociate the caller with a cohort. Calls calling into a call center mayseek to speak with a particular department such as sales or service. Itmay be determined that callers calling to speak with a particulardepartment may have a relatively higher level of urgency as compared tocallers calling to speak with a different department. For example, itmay be determined that callers calling to speak with a servicedepartment have a relatively higher level of urgency than callerscalling to speak with a sales department. When a caller is calling tospeak with the sales department, the caller may be associated with acohort of callers who also sought to speak with the sales department andmay be given a relatively lower baseline urgency. Using such a system, amore accurate baseline urgency may be given to callers based onparticular business intents.

At 421, an urgency score may be calculated by the computer system. Asdescribed herein, an urgency score may be computed for a singleconversation during a communication session between a single caller,such as a customer, and an enterprise.

Calculating an urgency score as described herein may comprise a processof receiving data from a caller during a communication session andprocessing the received data during the communication session todetermine factors relating to tone of voice, types of issue beingdescribed, whether the caller is using urgent words, etc. as describedherein. In some embodiments, an urgency score may be calculated in partbased on a frequency of a request made by a caller. For example, arelative urgency score assigned to a request from a caller who contactsa business frequently may be lowered simply based on contact frequency.Similarly, a caller who rarely contacts the business may be assigned ahigher relative urgency score based on his or her call frequency.

Calculating an urgency score as described herein may comprise receivingaudio, video, text, other information sent from the caller during thecommunication session. For example, while the caller is on the phoneduring the communication session, the caller's voice, text input by thecaller, video of the caller, and any other information sent from thecaller during the communication session may be received by the computersystem and used to create the urgency score.

Calculating an urgency score as described herein may comprise processingthe audio, video, text, and/or any other information received from thecaller during the communication session. Processing the audio, video,text, and other information sent from the caller during thecommunication session may comprise putting the audio, video, text, andother information sent from the caller during the communication sessioninto an artificial intelligence engine.

In some embodiments, the method may comprise converting audio into text.For example, prior to processing audio received during the communicationsession, the computer system may use a speech to text process to convertthe audio to text which may be fed into the artificial intelligenceengine for processing.

Audio during the communication session may be used to determine tone ofvoice of the caller. For example, processing audio received from acaller may enable the computer system to determine a pitch, timbre, orother vocal qualities associated with the caller. In some embodiments,processing audio may comprise comparing a caller's voice with one ormore voice prints stored in memory. Comparing a caller's voice withvoice prints may enable the communication session to identify the callerand/or associate the caller with a known user profile. Processing audiofrom a call may also enable the computer system to detect vocal eventssuch as crying, screaming, shouting, or whether it the user is speakingwith a soft and/or calm voice. The overall volume level may be used bythe computer system to estimate an urgency of the caller.

Text received from the caller during the communication session as wellas audio received during the communication session, whether converted totext or not, may be used to detect the use of urgent words such as“help,” “this is important,” etc., as well as detect the problem orissue being described by the caller.

In some embodiments, certain problems or issues may be associated withcertain levels of urgency. For example, depending on the applicationdifferent problems may be associated with different levels of urgency.In some embodiments, analyzing text and/or audio shared by a callerduring a communication session may enable the computer system to analyzeword choice of the caller.

For example, the computer system may be enabled to determine whether ornot the content shared by the caller during the communication session,whether audio or text, includes threats, either implicit or explicit.The computer system may be enabled to determine whether the contentduring the communication session includes threatening language or otherforms of language which may indicate a heightened level of urgency.

The computer system may be enabled to determine whether the contentduring the communication session, is particularly negative orparticularly positive. The computer system may be enabled to determinewhether there is specific time and/or place mentioned during thecommunication session. The computer system may be enabled to determinewhether the content during the communication session contains specifickey words.

The computer system may also be enabled to determine a type of issuebased on and/or text shared by a caller during a communication session.For example, the computer system may be enabled to determine whether thecontent during the communication session includes a request forassistance, the degree of specificity regarding the nature of a problem,whether the content during the communication session includes specificinformation such as names, phone numbers, part numbers, model numbers, aquotation from, for example, a repair person, customer service agent,and the like, whether a number of other calls have been receivedregarding the same matter, etc. For example, a request to find themaximum carryon baggage size is probably never going to be urgent, evenif the user speaks with urgent language or tone of voice.

Video received from the caller during the communication session may beused by the computer system to detect facial feature to determine alevel of urgency. For example, the AI engine may be comprised of aconvolutional neural network configured to accept input images such asstills from a video or moving images and configured to output, based onthe input, an indication as to the urgency based on detected facialfeatures.

Determining a type of caller may comprise determining the caller is aknown customer, whether the caller has a customer history, whether thecaller is a new customer, e.g., opened an account within past week,whether the caller is an unknown customer, whether the caller is acustomer who often calls customer support, etc.

By analyzing the data received from the caller during the communicationsession, the computer system may be enabled to compute an urgency scorebased both on the content of the communication session, i.e., the actualissue being described by the caller, as well as the behavior of thecaller, e.g., the caller's tone of voice, word choice, status as acustomer, etc.

In some embodiments, computing the urgency score may comprise generatinga number representing a relative urgency of the caller during thecommunication session as compared to other callers in othercommunication sessions. An urgency score can be a real number in aninterval such as [0, 1], a discrete value in a set of N possible values,a percentage, or in another format. For example, computing an urgencyscore may comprise determining a relative urgency based on an overallmaximum urgency.

The information received from the caller may be considered in additionto any baseline urgency score information which may be computed based onthe caller's identity or the cohorts with whom the caller may beassociated. For example, a scoring system may be used in which thebaseline provides a minimum urgency score and any information receivedduring the communication session, such as information obtained based onprocessing the caller's tone of voice or word choice, may be added tothe baseline score to obtain a total urgency score.

In some embodiments, an urgency score for a caller may be based in parton an assessment made by a human such as a call center agent. Forexample, when a call center agent is on a call with a caller, the callcenter agent may be presented with a user interface enabling the callcenter agent to input an urgency score, such as a number on a scale suchas from one to ten. The urgency score provided by the call center agentwhile on the call with the caller may be used by the computer system tocalculate the overall urgency score. In some embodiments, urgency scoresprovided by call center agents, or other users, may be used as part of amachine learning algorithm to provide feedback and train a neuralnetwork to generate the urgency scores automatically.

Generating an urgency score for a caller may in some embodimentscomprise generating the urgency score based at least in part on abaseline urgency score based on the caller's history, such as describedabove in relation to step 418 in the case of the caller being a knowncaller, or on historical data relating to one or more cohorts associatedwith the caller such as described above in relation to step 415 in thecase of the caller being an unknown caller. In some embodiments, anurgency score for a known caller may be generated based at least in parton both the specific caller's history as well as cohort data, forexample the urgency score may be generated based on a baseline urgencyscore calculated using elements of both steps 415 and 418 as describedabove. Such a baseline urgency score calculation may be described as ahybrid approach.

A baseline urgency score may be used to generate an urgency score for acaller in any number of ways. For example, in some embodiments aninitial urgency score may be generated based on data collected about thecaller during the call and the initial urgency score may be modifiedbased on the baseline urgency score.

Modifying the initial urgency score with the baseline urgency score maycomprise derating the initial urgency score by subtracting a bias or thebaseline urgency score. The bias may be, for example, a moving averageurgency score for the caller based on a particular number of precedingcalls for the caller or for one or more cohorts associated with thecaller.

Essentially, the goal for the baseline urgency score for a caller may beto determine or estimate the inherent urgency that the caller mayexpress as part of his or her normal way of communicating, and to removethat inherent urgency from the calculation of the urgency score. In thisway, a caller who seems to always be expressing urgent matters, nomatter how urgent the matter actually is, will not have an unnecessarilyhigh urgency score. On the other hand, a caller who speaks calmly andrespectfully despite having a highly urgent issue will not have anunreasonably low urgency score. For example, consider a caller using atext based communication system to describe a relatively non-urgentissue, such as a billing question, to a call center agent. The callermay use all caps and exclamation points to describe the question but maynot actually be intending to express any urgency. A computer system maybe enabled to recognize the caller, based on prior conversations, tendsto type with all caps and/or exclamation points when communicating andto, based on this recognition, generate an urgency score which does nottake into account this feature of the caller when generating the urgencyscore for the call.

The urgency score as described herein may be generated taking intoaccount any bias or baseline scores for a user or caller based on theuser or caller's personal history and/or cohort data.

Once an urgency score is generated, the urgency score may be used by thecomputer system at 424. Using the urgency score may comprise performingactions or generating instructions configured to enable other computersystems to perform actions during or following the communicationsession. For example, during the communication session actions such asmodifying behavior of a bot or instructions for a human to follow, suchas a call center agent, may be performed in response to changes in theurgency score.

Over the course of the communication session, the urgency score maycontinuously change. As the urgency score changes and reaches differentlevels, each level may be associated with a different response. Forexample, different threshold levels of urgency may invoke differentresponses as discussed below.

An urgency score, computed for a customer request at the beginning of aconversation with a business, can be used to modify the dialog andcontrol flow of the bot. Modifying bot behavior may comprise altering aflowchart or a tree of commands which the bot is instructed to follow.In some embodiments, a heightened urgency score may cause a bot to beinstructed to follow a different set of instructions.

Modifying human behavior may comprise altering a script or one or morerecommendations for a human, such as a call center agent, to follow whenspeaking with the caller during the communication session.

Modifying behavior of the bot may in some embodiments comprisegenerating or selecting a script or a response for the bot to output inresponse to the customer so as to reflect urgency. Modification ofdialog: responses to the customer can be adjusted to reflect urgency.

Modifying behavior of a bot in response to a change in urgency score mayenable a bot to appear to verbally recognize perceived urgency. Forexample, in response to a high level of urgency a bot may be instructedto state, “okay, I understand that your request is urgent, so let mehelp you” to calm the caller.

Modifying behavior of a bot in response to a change in urgency score mayenable a bot to change its modality to facilitate customer input in thecommunication session. For example, instead of instructing a bot torequest freeform textual input, which may be challenging to a customerat a high level of urgency, the bot may be instructed to provide optionsto a caller to input data through the use of graphical user interfacebuttons, menus, sliders, or other interactive widgets which may beeasier for a customer at a high level of urgency to provide input. Suchinput options may be vitally important to a caller if his or her urgencystems from a state of distress.

Similarly, modifying behavior of a bot in response to a change inurgency score may enable a bot to simplify its wording or otherwiseadapt to customer vernacular to facilitate customer input during thecommunication session.

In some embodiments, in response to a change in urgency score a controlflow of a bot or a human such as a call center agent may be modified.Based on a perceived urgency score, a bot may take different types ofactions and execute different sections of an overall workflow.

Modifying control flow of a bot in response to a high level of urgencymay comprise ending the bot's dialogue and escalating the communicationsession to a live human agent. Modifying control flow of a bot inresponse to a high level of urgency may comprise, for example, skippingnonessential prompts for the caller or skipping banter and changing thetone of the bot's prompts and messages from exuberant or chipper toserious. Modifying control flow of the bot in response to a high levelof urgency may comprise switching to a different sub-workflow thathandles urgent cases. It should be appreciated that urgency may beorthogonal to traditional chatbot concepts such as intent recognition. Abot may be enabled to execute different types of sub workflows for asame recognized intent based on different urgency scores. It should beappreciated such changes are listed for example purposes only and anyother changes may be implemented by a bot in response to a caller with arelatively high or low urgency score.

In some embodiments, modifying control flow of a bot in response to ahigh level of urgency may comprise reaching out to one or more externalplatforms (e.g., backend systems) based on urgency scores.

In some embodiments, the computer system may be configured to suggest oroffer to change a customer interaction channel based on urgency. Forexample, a caller conducting the communication session via text forexample in a browser window in response to a high urgency score may bepresented with an offer or suggestion to switch from text to voice inresponse to the higher urgency score.

In some embodiments, in response to a change in urgency score a bot maybe instructed to escalate the communication session. When a botescalates an automated conversation of a communication session humanagent, the process of transferring the communication session may beadjusted based on the calculated urgency score.

More urgent customer requests may be prioritized over less urgentcustomer requests if the number of live agents available at the time ofescalation is lower than the number of escalating communicationsessions. For example, if a highly urgent communication session is beingtransferred to a human agent and other communication sessions are onhold waiting to speak to the human agent the highly urgent communicationsession may be placed on a higher spot on the hold list based on itsurgency score while communication sessions with lower urgency scores maybe moved down on the hold list so that the more urgent communicationsession may be brought to the human agent sooner.

In some embodiments a user interface associated with a human agent of acall center may be modified based on urgency scores of incomingcommunication sessions. For example, live agents may see a visualizationof the urgency score when they accept an inbound communication session.Human agents may be presented with a list of communication sessionswhich are currently on hold and waiting for the human agent. The list ofcommunication sessions may comprise information such as current waittime as well as urgency score. Such a list of communication sessions mayenable the human agent to select which call he or she should acceptnext. In some embodiments, agent-assist technologies such as scripts forhuman agents may be modified based on the incoming urgency score.

Modifications to human and/or bot behavior may be made during or afterthe communication session. For example, the above discussedmodifications may be performed during the communication session tobetter enable the bot and/or humans speaking to the caller to handle thecommunication session. Other modifications may be performed after thecommunication session.

In some embodiments and urgency score associated with the communicationsession may affect future behavior of bots and/or instructions for humanusers. For example, after a communication session, information relatingto the computed urgency score may be used as information to generatebaseline urgency scores for the same caller or other callers in the sameor a similar cohort.

In some embodiments, a calculated urgency score may be used to optimizea contact center or other type of system. Specific contact centeroptimizations which may be performed in response to a calculated urgencyscore may include, for example, adjusting the workload of an agent basedon calculated urgency of an assigned work item.

Agents working in contact centers or call centers may be associated witha work log which may track the communication sessions each agent isassigned and conducts while working at the contact center. Such a worklog may include information associated with each communication session,such as an urgency score for each communication session.

One contact center may have any number of agents working at any onetime. As been shown that agents working under a great deal of stress areassociated with not only poor qualities of life but also damage to theability of the worker to conduct work at a high level of efficiency.Stress caused by workload may be attributed to fielding calls with highlevels of urgency. By tracking the urgency level of each call and agentworks on or participates in, the computer system may be enabled toaccurately estimate the amount of stress each agent is under any giventime. For example, an agent with a relatively high number of urgentcalls, that is calls with a high level of urgency or a high urgencyscore, may be determined to be more likely to suffer from stress thenother agents with relatively low numbers of urgent calls. Such metricsmay be measured on a daily, weekly, monthly, etc. basis.

The computer system may be enabled to adjust the workload of an agentbased on an average urgency score for calls which the agent isassociated with over a given period of time. For example, the computersystem may be configured to assign a communication session associatedwith a high urgency score to an agent who is associated with arelatively low number of communication sessions having relatively highurgencies scores. In this way, the average urgency score ofcommunication sessions handled by each agent within a call center may bebalanced across the call center.

It should be appreciated the urgency score may continuously be updatedduring a communication session. The urgency score may begin at thebaseline and may be updated periodically or continuously throughout thecommunication session. In this way, the bot or agent instructions may bemodified in real-time in response to changes in the urgency score.

At 427, the method 400 may end when the communication session ends. Themethod 400 as described herein enables calls or other forms ofcommunication sessions to be automatically handled in such a way thatwas previously impossible.

Using conventional methods, calls of all urgencies are handled in thesame way. This results in highly urgent matters to not be handled in atimely manner, resulting in damage and loss of user satisfaction. Thisis a technical problem in that call centers require technical systems,such as bots, to field calls. Contemporary bots are not capable ofdealing with calls based on urgency. The technical problem of botslacking the ability to deal with calls based on urgency results in harmto users and to enterprises such as call centers.

Using the methods and systems described herein, the previouslyimpossible system is achieved through the use of automatically generatedurgency scores based on real-time information as well as pastinformation. This is a technical solution, in that through the use ofartificial intelligence, a technical system capable of assigning urgencyscores to users and using those urgency scores to handle calls inreal-time is achieved. This solves the problem caused by conventionaltechnology which is not capable of handling calls based on urgencyscores.

Any of the steps, functions, and operations discussed herein can beperformed continuously and automatically.

The exemplary systems and methods of this disclosure have been describedin relation to communication devices, multiple-device accessenvironments, and communication systems. However, to avoid unnecessarilyobscuring the present disclosure, the preceding description omits anumber of known structures and devices. This omission is not to beconstrued as a limitation of the scope of the claimed disclosure.Specific details are set forth to provide an understanding of thepresent disclosure. It should, however, be appreciated that the presentdisclosure may be practiced in a variety of ways beyond the specificdetail set forth herein. For instance, while described in conjunctionwith client-server networks (e.g., conferencing servers, client devices,etc.), it should be appreciated that the components, systems, and/ormethods described herein may be employed as part of a peer-to-peernetwork or other network. As can be appreciated, in a peer-to-peernetwork, the various components or systems described in conjunction withthe communication system 100 may be part of one or more endpoints, orcomputers, participating in the peer-to-peer network.

Furthermore, while the exemplary embodiments illustrated herein show thevarious components of the system collocated, certain components of thesystem can be located remotely, at distant portions of a distributednetwork, such as a LAN and/or the Internet, or within a dedicatedsystem. Thus, it should be appreciated, that the components of thesystem can be combined into one or more devices, such as a server,communication device, or collocated on a particular node of adistributed network, such as an analog and/or digital telecommunicationsnetwork, a packet-switched network, or a circuit-switched network. Itwill be appreciated from the preceding description, and for reasons ofcomputational efficiency, that the components of the system can bearranged at any location within a distributed network of componentswithout affecting the operation of the system. For example, the variouscomponents can be located in a switch such as a PBX and media server,gateway, in one or more communications devices, at one or more users'premises, or some combination thereof. Similarly, one or more functionalportions of the system could be distributed between a telecommunicationsdevice(s) and an associated computing device.

Furthermore, it should be appreciated that the various links connectingthe elements can be wired or wireless links, or any combination thereof,or any other known or later developed element(s) that is capable ofsupplying and/or communicating data to and from the connected elements.These wired or wireless links can also be secure links and may becapable of communicating encrypted information. Transmission media usedas links, for example, can be any suitable carrier for electricalsignals, including coaxial cables, copper wire, and fiber optics, andmay take the form of acoustic or light waves, such as those generatedduring radio-wave and infra-red data communications.

While the flowcharts have been discussed and illustrated in relation toa particular sequence of events, it should be appreciated that changes,additions, and omissions to this sequence can occur without materiallyaffecting the operation of the disclosed embodiments, configuration, andaspects.

A number of variations and modifications of the disclosure can be used.It would be possible to provide for some features of the disclosurewithout providing others.

In yet another embodiment, the systems and methods of this disclosurecan be implemented in conjunction with a special purpose computer, aprogrammed microprocessor or microcontroller and peripheral integratedcircuit element(s), an ASIC or other integrated circuit, a digitalsignal processor, a hard-wired electronic or logic circuit such asdiscrete element circuit, a programmable logic device or gate array suchas PLD, PLA, FPGA, PAL, special purpose computer, any comparable means,or the like. In general, any device(s) or means capable of implementingthe methodology illustrated herein can be used to implement the variousaspects of this disclosure. Exemplary hardware that can be used for thepresent disclosure includes computers, handheld devices, telephones(e.g., cellular, Internet enabled, digital, analog, hybrids, andothers), and other hardware known in the art. Some of these devicesinclude processors (e.g., a single or multiple microprocessors), memory,nonvolatile storage, input devices, and output devices. Furthermore,alternative software implementations including, but not limited to,distributed processing or component/object distributed processing,parallel processing, or virtual machine processing can also beconstructed to implement the methods described herein.

In yet another embodiment, the disclosed methods may be readilyimplemented in conjunction with software using object or object-orientedsoftware development environments that provide portable source code thatcan be used on a variety of computer or workstation platforms.Alternatively, the disclosed system may be implemented partially orfully in hardware using standard logic circuits or VLSI design. Whethersoftware or hardware is used to implement the systems in accordance withthis disclosure is dependent on the speed and/or efficiency requirementsof the system, the particular function, and the particular software orhardware systems or microprocessor or microcomputer systems beingutilized.

In yet another embodiment, the disclosed methods may be partiallyimplemented in software that can be stored on a storage medium, executedon programmed general-purpose computer with the cooperation of acontroller and memory, a special purpose computer, a microprocessor, orthe like. In these instances, the systems and methods of this disclosurecan be implemented as a program embedded on a personal computer such asan applet, JAVA® or CGI script, as a resource residing on a server orcomputer workstation, as a routine embedded in a dedicated measurementsystem, system component, or the like. The system can also beimplemented by physically incorporating the system and/or method into asoftware and/or hardware system.

Although the present disclosure describes components and functionsimplemented in the embodiments with reference to particular standardsand protocols, the disclosure is not limited to such standards andprotocols. Other similar standards and protocols not mentioned hereinare in existence and are considered to be included in the presentdisclosure. Moreover, the standards and protocols mentioned herein, andother similar standards and protocols not mentioned herein areperiodically superseded by faster or more effective equivalents havingessentially the same functions. Such replacement standards and protocolshaving the same functions are considered equivalents included in thepresent disclosure.

The present disclosure, in various embodiments, configurations, andaspects, includes components, methods, processes, systems and/orapparatus substantially as depicted and described herein, includingvarious embodiments, sub combinations, and subsets thereof. Those ofskill in the art will understand how to make and use the systems andmethods disclosed herein after understanding the present disclosure. Thepresent disclosure, in various embodiments, configurations, and aspects,includes providing devices and processes in the absence of items notdepicted and/or described herein or in various embodiments,configurations, or aspects hereof, including in the absence of suchitems as may have been used in previous devices or processes, e.g., forimproving performance, achieving ease, and/or reducing cost ofimplementation.

The foregoing discussion of the disclosure has been presented forpurposes of illustration and description. The foregoing is not intendedto limit the disclosure to the form or forms disclosed herein. In theforegoing Detailed Description for example, various features of thedisclosure are grouped together in one or more embodiments,configurations, or aspects for the purpose of streamlining thedisclosure. The features of the embodiments, configurations, or aspectsof the disclosure may be combined in alternate embodiments,configurations, or aspects other than those discussed above. This methodof disclosure is not to be interpreted as reflecting an intention thatthe claimed disclosure requires more features than are expressly recitedin each claim. Rather, as the following claims reflect, inventiveaspects lie in less than all features of a single foregoing disclosedembodiment, configuration, or aspect. Thus, the following claims arehereby incorporated into this Detailed Description, with each claimstanding on its own as a separate preferred embodiment of thedisclosure.

Moreover, though the description of the disclosure has includeddescription of one or more embodiments, configurations, or aspects andcertain variations and modifications, other variations, combinations,and modifications are within the scope of the disclosure, e.g., as maybe within the skill and knowledge of those in the art, afterunderstanding the present disclosure. It is intended to obtain rights,which include alternative embodiments, configurations, or aspects to theextent permitted, including alternate, interchangeable and/or equivalentstructures, functions, ranges, or steps to those claimed, whether or notsuch alternate, interchangeable and/or equivalent structures, functions,ranges, or steps are disclosed herein, and without intending to publiclydedicate any patentable subject matter.

Embodiments include a method for handling a communication, the methodcomprising: processing data associated with a communication session,generating an urgency score associated with the data based on theprocessing of the data, and using the urgency score to one or more ofmodify a behavior of a bot and optimize a contact center.

Aspects of the above method include wherein the behavior of the bot ismodified during the communication session in response to the data,wherein modifying the behavior of the bot comprises one or more ofmodifying dialog of the bot and modifying a control flow, whereinmodifying the behavior of the bot comprises escalating the communicationsession, and/or wherein optimizing the contact center comprisesadjusting workload of an agent associated with the communicationsession.

Aspects of the above method include the method further comprisingtransferring the communication session to a first agent based on theurgency score. Aspects of the above method include wherein a scriptassociated with the first agent is generated based in part on theurgency score. Aspects of the above method include the method furthercomprising, prior to transferring the communication session to the firstagent, displaying an indication of the urgency score on a displayassociated with the first agent.

Aspects of the above method include wherein a caller is associated withthe communication session, wherein the urgency score is generated basedin part on one or more prior communication sessions associated with thecaller. Aspects of the above method include wherein the urgency score isgenerated based in part on a baseline urgency score associated with thecaller. Aspects of the above method include wherein the baseline urgencyscore associated with the caller is based on the one or more priorcommunication sessions associated with the caller.

Aspects of the above method include wherein a caller is associated withthe communication session, wherein the urgency score is generated basedin part on one or more prior communication sessions associated withother callers. Aspects of the above method include further comprisingidentifying the other callers based on one or more attributes of thecaller. Aspects of the above method include wherein the urgency score isgenerated based in part on a baseline urgency score associated with theother callers.

Aspects of the above method include wherein the baseline urgency scoreassociated with the other callers is based on the one or more priorcommunication sessions associated with the other callers. Aspects of theabove method include wherein the urgency score is generated based on oneor more of words used by a caller during the communication session, atone of a voice of the caller during the communication session, and aproblem described by the caller during the communication session.Aspects of the above method include the method further comprisinggenerating an urgency bias associated with a caller associated with thecommunication session. Aspects of the above method include wherein theurgency bias is based on prior communication sessions associated withthe caller.

Embodiments include a user device comprising: a processor and acomputer-readable storage medium storing computer-readable instructionswhich, when executed by the processor, cause the processor to execute amethod, the method comprising processing data associated with acommunication session, generating an urgency score associated with thedata based on the processing of the data, and using the urgency score toone or more of modify a behavior of a bot and optimize a contact center.

Aspects of the above user device include wherein the behavior of the botis modified during the communication session in response to the data,wherein modifying the behavior of the bot comprises one or more ofmodifying dialog of the bot and modifying a control flow, whereinmodifying the behavior of the bot comprises escalating the communicationsession, and/or wherein optimizing the contact center comprisesadjusting workload of an agent associated with the communicationsession.

Aspects of the above user device include the method further comprisingtransferring the communication session to a first agent based on theurgency score. Aspects of the above user device include wherein a scriptassociated with the first agent is generated based in part on theurgency score. Aspects of the above user device include the methodfurther comprising, prior to transferring the communication session tothe first agent, displaying an indication of the urgency score on adisplay associated with the first agent.

Aspects of the above user device include wherein a caller is associatedwith the communication session, wherein the urgency score is generatedbased in part on one or more prior communication sessions associatedwith the caller. Aspects of the above user device include wherein theurgency score is generated based in part on a baseline urgency scoreassociated with the caller. Aspects of the above user device includewherein the baseline urgency score associated with the caller is basedon the one or more prior communication sessions associated with thecaller.

Aspects of the above user device include wherein a caller is associatedwith the communication session, wherein the urgency score is generatedbased in part on one or more prior communication sessions associatedwith other callers. Aspects of the above user device include furthercomprising identifying the other callers based on one or more attributesof the caller. Aspects of the above user device include wherein theurgency score is generated based in part on a baseline urgency scoreassociated with the other callers.

Aspects of the above user device include wherein the baseline urgencyscore associated with the other callers is based on the one or moreprior communication sessions associated with the other callers. Aspectsof the above user device include wherein the urgency score is generatedbased on one or more of words used by a caller during the communicationsession, a tone of a voice of the caller during the communicationsession, and a problem described by the caller during the communicationsession. Aspects of the above user device include the method furthercomprising generating an urgency bias associated with a callerassociated with the communication session. Aspects of the above userdevice include wherein the urgency bias is based on prior communicationsessions associated with the caller.

Embodiments include a computer program product comprising anon-transitory computer-readable storage medium having computer-readableprogram code embodied therewith, the computer-readable program codeconfigured, when executed by a processor, to execute a method, themethod comprising processing data associated with a communicationsession, generating an urgency score associated with the data based onthe processing of the data, and using the urgency score to one or moreof modify a behavior of a bot and optimize a contact center.

Aspects of the above computer program product include wherein thebehavior of the bot is modified during the communication session inresponse to the data, wherein modifying the behavior of the botcomprises one or more of modifying dialog of the bot and modifying acontrol flow, wherein modifying the behavior of the bot comprisesescalating the communication session, and/or wherein optimizing thecontact center comprises adjusting workload of an agent associated withthe communication session.

Aspects of the above computer program product include the method furthercomprising transferring the communication session to a first agent basedon the urgency score. Aspects of the above computer program productinclude wherein a script associated with the first agent is generatedbased in part on the urgency score. Aspects of the above computerprogram product include the method further comprising, prior totransferring the communication session to the first agent, displaying anindication of the urgency score on a display associated with the firstagent.

Aspects of the above computer program product include wherein a calleris associated with the communication session, wherein the urgency scoreis generated based in part on one or more prior communication sessionsassociated with the caller. Aspects of the above computer programproduct include wherein the urgency score is generated based in part ona baseline urgency score associated with the caller. Aspects of theabove computer program product include wherein the baseline urgencyscore associated with the caller is based on the one or more priorcommunication sessions associated with the caller.

Aspects of the above computer program product include wherein a calleris associated with the communication session, wherein the urgency scoreis generated based in part on one or more prior communication sessionsassociated with other callers. Aspects of the above computer programproduct include further comprising identifying the other callers basedon one or more attributes of the caller. Aspects of the above computerprogram product include wherein the urgency score is generated based inpart on a baseline urgency score associated with the other callers.

Aspects of the above computer program product include wherein thebaseline urgency score associated with the other callers is based on theone or more prior communication sessions associated with the othercallers. Aspects of the above computer program product include whereinthe urgency score is generated based on one or more of words used by acaller during the communication session, a tone of a voice of the callerduring the communication session, and a problem described by the callerduring the communication session. Aspects of the above computer programproduct include the method further comprising generating an urgency biasassociated with a caller associated with the communication session.Aspects of the above computer program product include wherein theurgency bias is based on prior communication sessions associated withthe caller.

Any one or more of the aspects/embodiments as substantially disclosedherein. Any one or more of the aspects/embodiments as substantiallydisclosed herein optionally in combination with any one or more otheraspects/embodiments as substantially disclosed herein. One or meansadapted to perform any one or more of the above aspects/embodiments assubstantially disclosed herein.

The phrases “at least one,” “one or more,” “or,” and “and/or” areopen-ended expressions that are both conjunctive and disjunctive inoperation. For example, each of the expressions “at least one of A, Band C,” “at least one of A, B, or C,” “one or more of A, B, and C,” “oneor more of A, B, or C,” “A, B, and/or C,” and “A, B, or C” means Aalone, B alone, C alone, A and B together, A and C together, B and Ctogether, or A, B and C together.

The term “a” or “an” entity refers to one or more of that entity. Assuch, the terms “a” (or “an”), “one or more,” and “at least one” can beused interchangeably herein. It is also to be noted that the terms“comprising,” “including,” and “having” can be used interchangeably.

The term “automatic” and variations thereof, as used herein, refers toany process or operation, which is typically continuous orsemi-continuous, done without material human input when the process oroperation is performed. However, a process or operation can beautomatic, even though performance of the process or operation usesmaterial or immaterial human input, if the input is received beforeperformance of the process or operation. Human input is deemed to bematerial if such input influences how the process or operation will beperformed. Human input that consents to the performance of the processor operation is not deemed to be “material.”

Aspects of the present disclosure may take the form of an embodimentthat is entirely hardware, an embodiment that is entirely software(including firmware, resident software, micro-code, etc.) or anembodiment combining software and hardware aspects that may allgenerally be referred to herein as a “circuit,” “module,” or “system.”Any combination of one or more computer-readable medium(s) may beutilized. The computer-readable medium may be a computer-readable signalmedium or a computer-readable storage medium.

The term “computer-readable medium” as used herein refers to anytangible storage and/or transmission medium that participate inproviding instructions to a processor for execution. Such a medium maytake many forms, including but not limited to, non-volatile media,volatile media, and transmission media. Non-volatile media includes, forexample, NVRAM, or magnetic or optical disks. Volatile media includesdynamic memory, such as main memory. Common forms of computer-readablemedia include, for example, a floppy disk, a flexible disk, hard disk,magnetic tape, or any other magnetic medium, magneto-optical medium, aCD-ROM, any other optical medium, punch cards, paper tape, any otherphysical medium with patterns of holes, a RAM, a PROM, and EPROM, aFLASH-EPROM, a solid state medium like a memory card, any other memorychip or cartridge, a carrier wave as described hereinafter, or any othermedium from which a computer can read. A digital file attachment toe-mail or other self-contained information archive or set of archives isconsidered a distribution medium equivalent to a tangible storagemedium. When the computer-readable media is configured as a database, itis to be understood that the database may be any type of database, suchas relational, hierarchical, object-oriented, and/or the like.Accordingly, the disclosure is considered to include a tangible storagemedium or distribution medium and prior art-recognized equivalents andsuccessor media, in which the software implementations of the presentdisclosure are stored.

A “computer readable signal” medium may include a propagated data signalwith computer readable program code embodied therein, for example, inbaseband or as part of a carrier wave. Such a propagated signal may takeany of a variety of forms, including, but not limited to,electro-magnetic, optical, or any suitable combination thereof. Acomputer readable signal medium may be any computer readable medium thatis not a computer readable storage medium and that can communicate,propagate, or transport a program for use by or in connection with aninstruction execution system, apparatus, or device. Program codeembodied on a computer readable medium may be transmitted using anyappropriate medium, including but not limited to wireless, wireline,optical fiber cable, RF, etc., or any suitable combination of theforegoing.

The terms “determine,” “calculate,” “compute,” and variations thereof,as used herein, are used interchangeably, and include any type ofmethodology, process, mathematical operation, or technique.

It shall be understood that the term “means” as used herein shall begiven its broadest possible interpretation in accordance with 35 U.S.C.,Section 112, Paragraph 6. Accordingly, a claim incorporating the term“means” shall cover all structures, materials, or acts set forth herein,and all of the equivalents thereof. Further, the structures, materialsor acts and the equivalents thereof shall include all those described inthe summary of the disclosure, brief description of the drawings,detailed description, abstract, and claims themselves.

Examples of the processors as described herein may include, but are notlimited to, at least one of Qualcomm® Snapdragon® 800 and 801, Qualcomm®Snapdragon® 610 and 615 with 4G LTE Integration and 64-bit computing,Apple® A7 processor with 64-bit architecture, Apple® M7 motioncoprocessors, Samsung® Exynos® series, the Intel® Core™ family ofprocessors, the Intel® Xeon® family of processors, the Intel® Atom™family of processors, the Intel Itanium® family of processors, Intel®Core® i5-4670K and i7-4770K 22 nm Haswell, Intel® Core® i5-3570K 22 nmIvy Bridge, the AMD® FX™ family of processors, AMD® FX-4300, FX-6300,and FX-8350 32 nm Vishera, AMD® Kaveri processors, ARM® Cortex™-Mprocessors, ARM® Cortex-A and ARM926EJ-S™ processors, otherindustry-equivalent processors, and may perform computational functionsusing any known or future-developed standard, instruction set,libraries, and/or architecture.

Methods described or claimed herein can be performed with traditionalexecutable instruction sets that are finite and operate on a fixed setof inputs to provide one or more defined outputs. Alternatively oradditionally, methods described or claimed herein can be performed usingAI, machine learning, neural networks, or the like. In other words, asystem or server is contemplated to include finite instruction setsand/or artificial intelligence-based models/neural networks to performsome or all of the steps described herein.

1. A method for handling a communication, the method comprising:processing data associated with a communication session; generating anurgency score for the communication session based on the processing ofthe data; and based on the urgency score, one or more of escalating thecommunication session, adjusting workload of an agent associated withthe communication session, and transferring the communication session tothe agent. 2.-6. (canceled)
 7. The method of claim 1, further comprisinggenerating a script associated with the agent based at least in part onthe urgency score.
 8. The method of claim 1, further comprising, priorto transferring the communication session to the agent, displaying anindication of the urgency score on a display associated with the agent.9. The method of claim 1, wherein the urgency score is generated basedin part on one or more prior communication sessions associated with acaller associated with the communication session.
 10. The method ofclaim 9, wherein the urgency score is generated based at least in parton a baseline urgency score associated with the caller.
 11. The methodof claim 10, wherein the baseline urgency score associated with thecaller is based on the one or more prior communication sessionsassociated with the caller.
 12. The method of claim 1, wherein a calleris associated with the communication session, wherein the urgency scoreis generated based at least in part on one or more prior communicationsessions associated with callers other than the caller associated withthe communication session.
 13. The method of claim 12, furthercomprising identifying the callers other than the caller associated withthe communication session based on one or more attributes of the caller.14. The method of claim 12, wherein the urgency score is generated basedat least in part on a baseline urgency score associated with the callersother than the caller associated with the communication session.
 15. Themethod of claim 14, wherein the baseline urgency score associated withthe other callers is based on the one or more prior communicationsessions associated with the callers other than the caller associatedwith the communication session.
 16. The method of claim 1, wherein theurgency score is generated based on one or more of words used by acaller during the communication session, a tone of a voice of the callerduring the communication session, and a problem described by the callerduring the communication session.
 17. The method of claim 1 furthercomprising generating an urgency bias associated with a callerassociated with the communication session.
 18. The method of claim 1,wherein the urgency bias is based on prior communication sessionsassociated with the caller.
 19. A user device comprising: a processor;and a computer-readable storage medium storing computer-readableinstructions which, when executed by the processor, cause the processorto execute a method, the method comprising: processing data associatedwith a communication session; generating an urgency score for thecommunication session based on the processing of the data; and based onthe urgency score, one or more of escalating the communication session,adjusting workload of an agent associated with the communicationsession, and transferring the communication session to the agent.
 20. Acomputer program product comprising: a non-transitory computer-readablestorage medium having computer-readable program code embodied therewith,the computer-readable program code configured, when executed by aprocessor, to execute a method, the method comprising: processing dataassociated with a communication session; generating an urgency score forthe communication session based on the processing of the data; and basedon the urgency score, one or more of escalating the communicationsession, adjusting workload of an agent associated with thecommunication session, and transferring the communication session to theagent.
 21. The user device of claim 19, wherein the method furthercomprises generating a script associated with the agent based at leastin part on the urgency score.
 22. The user device of claim 19, whereinthe method further comprises, prior to transferring the communicationsession to the agent, displaying an indication of the urgency score on adisplay associated with the agent.
 23. The user device of claim 19,wherein the urgency score is generated based in part on one or moreprior communication sessions associated with a caller associated withthe communication session.
 24. The user device of claim 23, wherein theurgency score is generated based at least in part on a baseline urgencyscore associated with the caller.
 25. The user device of claim 24,wherein the baseline urgency score associated with the caller is basedon the one or more prior communication sessions associated with thecaller.